不要再執著於用了某個 pattern 重構完的 class diagram,為什麼長得跟 GoF 或 wiki 上的 UML 不一樣,然後就指著別人說:「你這不是 xx pattern」
劍招是死的,人是活的,活人怎麼會被死招綁住呢?重構與 pattern 的重點都在解決問題,消除重複、簡化程式碼、讓程式碼更清楚好懂。只要有達到目的,甚至是啥 pattern 都不是這麼重要的。
但這也不代表,不用學習 pattern,因為重構或設計完成後,往往可以跟 pattern 來做比對,以確認自己是活招活使、活學活用,還是有更好的改善空間、去除不必要的設計。
pattern 的另外一個目的,是用來溝通。當兩個 developer 進行溝通時,往往透過 pattern 的名字,就能理解對方現在想要解決的問題是什麼,進而快速聚焦在,我們有哪一些物件需要設計,該怎麼抽象。
#RefactoringToPatterns #讀書心得